End users of an Internet Protocol (IP) network, such as a private or public internet or intranet may communicate with the IP network via an access network. The end user uses an end user equipment such as a mobile or stationary telephone or computing device connected to the access network in order to send and receive communications over the IP network. The IP network may be made up of several sub-networks interfaced with each other.
The access network may be a packet switched network, such as a General Packet Radio Service (GPRS) network as defined by the Third Generation Partnership Project (3GPP). The IP network and the access network are generally interfaced by a gateway node of the access network, which is an example of a traffic plane function (TPF). Where the access network is a GPRS network the gateway node will typically be a Gateway GPRS Support Node (GGSN). The gateway node transports data packets between the access network and the IP network. For charging purposes the gateway node, or a network entity associated with the gateway node, identifies packet streams or service flows between an end user connected to the access network and the IP network. Each packet stream or service flow is a flow of data transported between the access network and the IP network via the gateway node and associated with a particular application, service or group of applications and services, such as browsing on a particular site of the IP network or a VoIP (Voice over IP) or multimedia call carried over the IP network.
Content based billing (CBB) may be used for charging the end user for their use of the communications system. In content based billing, the traffic plane function (TPF) (eg. the GGSN or other equivalent device) filters the service flows it transports by matching the service flows to given criteria and measuring the network resource used by a service flow and/or detecting application-level events so that appropriate tariffs can be applied to the service flows based on the matching of the criteria. For example, network resource may be measured by each filter having an associated bucket in which the number of bytes transported over the service flow associated with that filter is stored. A service flow as identified by a gateway may correspond to one or more user data flows.
In the case of online charging, where an end user has paid up front for access to the communications system the TPF is granted a token for an identified service flow. The token is granted by a Service Control Point (SCP) or Online Charging System (OCS), more generically referred to herein as a billing control function and an example of a billing system. Then the TPF measures the network resource consumed by the service flow and/or detects application-level events and decrements the associated token accordingly. In the case of offline charging, where an end user pays later for access to the communication system, the TPF measures the network resource used by service flows and/or detects application-level events and stores the results in a charging log based on instructions from a billing system and/or on gateway local policy. The charging log is sent periodically to the billing system which uses the information to bill the end user.
So far in content based billing the TPF is less aware of the status of the application servers to which a service flow relates than is desirable. Accordingly, the TPF can measure the network resource used by a service flow based only on a limited number of criteria.
In addition, there are service delivery and charging models which the operator of the communications system (referred to herein as the network operator, generally a business organization) may not want to implement for certain application servers which are operated by a business organization different from the network operator and so are not fully trusted by the network operator. For example, the network operator may be requested to charge the end user based on information reported by a third party delivering the service. A level of control and/or monitoring by the network operator of the information reported by the third party is required, beyond that which is currently available, in order for the network operator to verify the reliability of the information reported to it by the third party. In addition the network operator may wish to ensure that the end user is charged only if a service provided by the third party is successfully delivered, which again requires a level of control and/or monitoring by the network operator which is not currently available.